/**
 * @file parameter.h
 * @brief Parameter system for H743-V2 Flight Control System
 */

#ifndef __PARAMETER_H
#define __PARAMETER_H

#ifdef __cplusplus
extern "C" {
#endif

#include <stdint.h>

typedef enum {
    PARAM_TYPE_INT32 = 0,
    PARAM_TYPE_FLOAT,
    PARAM_TYPE_STRING
} ParamType_t;

int Parameter_Init(void);
int Parameter_Load(void);
int Parameter_Save(void);
int Parameter_SetInt(const char *name, int32_t value);
int Parameter_SetFloat(const char *name, float value);
int Parameter_GetInt(const char *name, int32_t *value);
int Parameter_GetFloat(const char *name, float *value);

#ifdef __cplusplus
}
#endif

#endif /* __PARAMETER_H */

